#ifndef ROADNAMEMATCHER_H_
#define ROADNAMEMATCHER_H_

#ifndef NULL
#define NULL 0
#endif

#include "map/Road.h"

#include "util/Matcher.h"
#include <string>

using namespace std;
/*
 * Matcher que utiliza el metodo getId() para comparar un elemento con un id.
 */
class RoadNameMatcher: public Matcher<Road> {
public:

	/* Constructor. Recibe el rango que se va a usar de overlapping */
	RoadNameMatcher(string name) {
		this->name = name;
	}

	/* Destructor. */
	virtual ~RoadNameMatcher() {
	}

	/*
	 * Metodo para comparar. Devuelve true en caso que el id del elemento
	 * a comparar sea igual al id seteado anteriormente.
	 */
	virtual bool matches(Road* dataToCompare) {
		return dataToCompare->getName() == this->name;
	}

private:
	string name;
};

#endif /* ROADNAMEMATCHER_H_*/
